import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
#import sweetviz as sv import seaborn as sns
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
%matplotlib inline
df = pd.read_csv("https://raw.githubusercontent.com/udbhav-96/delhi-house-price-prediction/main/Delhi_v2.csv")
df.head()
rows, columns = df.shape
print(f"There are {rows} rows and {columns} columns.")
df.isnull().sum()
sns.heatmap(df.isnull(), yticklabels=False, cbar=False)
df.drop('Balcony',axis=1,inplace=True)
sns.heatmap(df.isnull(), yticklabels=False, cbar=False)
sns.scatterplot(x=df.area,y=df.Bedrooms)
sns.boxplot(df["Bathrooms"])
df["Bathrooms"].value_counts()
df[df['Bathrooms']>=10]
df.drop([151,2207, 2805, 6865],inplace=True)
df.describe()
df['Status'] = df['Status'].map({'Ready to Move': 1, 'Under Construction': 0})
df.head()
df.Status.fillna(0,inplace=True)
sns.heatmap(df.isnull(), yticklabels=False, cbar=False)
df.dtypes
df['neworold'] = df['neworold'].map({'New Property': 1, 'Resale': 0})
df['type_of_building'] = df['type_of_building'].map({'Individual House': 1, 'Flat': 0})
df.head()
df.dtypes
plt.figure(figsize=(14,7))
sns.scatterplot(x=df.area,y=df.price)
from google.colab import files
df.to_csv('Delhi_for_model.csv')
files.download('Delhi_for_model.csv')
from folium.plugins import HeatMap, MarkerCluster
import folium
sns.set_style("whitegrid")
def map_func(data):
map_data=data[['latitude','longitude','price']]
city_map = folium.Map(location=[data.latitude.mean(),data.longitude.mean()], zoom_start=9.5, tiles='openstreetmap')
mc = MarkerCluster()
for idx, row in map_data.iterrows():
popup = """
Price : <b>%s</b><br>
""" % ( row['price'])
mc.add_child(folium.Marker([row['latitude'], row['longitude']],tooltip=popup))
city_map.add_child(mc)
return city_map
map_func(df)